﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Biz_Dal.Dal;

namespace Biz_Dal.Biz
{
    public class BizTheLoai
    {

        #region "Khời tạo"
        public BizTheLoai()
        { 
        
        }

        public BizTheLoai(int _idTheLoai)
        {
            this._idTheLoai = _idTheLoai;
        }

        public BizTheLoai(int _idTheLoai, string _maTheLoai, string _tenTheLoai)
        {
            this._idTheLoai = _idTheLoai;
            this._maTheLoai = _maTheLoai;
            this._tenTheLoai = _tenTheLoai;
        }
        #endregion

        #region "Thuộc tính"
        private int _idTheLoai;

        private string _maTheLoai;

        private string _tenTheLoai;
        
        
        public int idTheLoai
        {
            get
            {
                return this._idTheLoai;
            }
            set
            {
                this._idTheLoai = value;
            }
        }

        
        public string maTheLoai
        {
            get
            {
                return this._maTheLoai;
            }
            set
            {
                this._maTheLoai = value;
            }
        }

        
        public string tenTheLoai
        {
            get
            {
                return this._tenTheLoai;
            }
            set
            {
                this._tenTheLoai = value;
            }
        }
        #endregion

        //DalTheLoai TheLoai = new DalTheLoai();

        public static int CountListTheLoai()
        {
            try
            {
                return DalTheLoai.CountListTheLoai();
            }
            catch
            {
                throw new Exception("Error!");
            }
        }

        //lấy id mới
        public static int IdMaxTheLoai()
        {
            try
            {
                return DalTheLoai.IdMaxTheLoai();
            }
            catch
            {
                throw new Exception("Error!");
            }
        }

        //Lấy danh thể loại tất cả các thể loại
        public static List<BizTheLoai> getListTheLoaiAll()
        {
            try
            {
                return DalTheLoai.getListTheLoaiAll();
            }
            catch
            {
                throw new Exception("Error!");
            }
        }

        //Danh thể loại các thể loại có id thể loại được nhập vào
        public static BizTheLoai getTheLoaiByID(int idTheLoai)
        {
            try
            {
                return DalTheLoai.getTheLoaiByID(idTheLoai);
            }
            catch
            {
                throw new Exception("Error!");
            }
        }

        //Lấy danh thể loại tất cả các thể loại có tên được nhập vào
        public static List<BizTheLoai> getListTheLoaiByName(string name)
        {
            try
            {
                return DalTheLoai.getListTheLoaiByName(name);
            }
            catch
            {
                throw new Exception("Error!");
            }
        }

        //Lấy thể loại gần đúng các thể loại có mã thể loại được nhập vào
        public List<BizTheLoai> getLikeTheLoaiByID(string maTheLoai)
        {
            try
            {
                return DalTheLoai.getLikeTheLoaiByMa(maTheLoai);
            }
            catch
            {
                throw new Exception("Error!");
            }
        }

        //Lấy danh thể loại gần đúng tất cả các thể loại có tên được nhập vào
        public List<BizTheLoai> getListLikeTheLoaiByName(string name)
        {
            try
            {
                return DalTheLoai.getListLikeTheLoaiByName(name);
            }
            catch
            {
                throw new Exception("Error!");
            }
        }

        //Thêm thể loại
        public static void insertTheLoai(BizTheLoai vtTheLoai)
        {
            try
            {
                DalTheLoai.insertTheLoai(vtTheLoai);
            }
            catch
            {
                throw new Exception("Error!");
            }
        }

        //Xóa thể loại
        public static void deleteTheLoai(string maTheLoai)
        {
            try
            {
                DalTheLoai.deleteTheLoai(maTheLoai);
            }
            catch
            {
                throw new Exception("Error!");
            }
        }

        //Sửa thể loại
        public void updateTheLoai()
        {
            try
            {
                DalTheLoai.updateTheLoai(this);
            }
            catch
            {
                throw new Exception("Error!");
            }
        }
    }
}
